//
//  HttpUserManager.h
//  Cat
//
//  Created by lushitong on 2018/12/1.
//  Copyright © 2018年 lushitong. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "HttpBaseManager.h"

@class FMDBUser, MemberModel, EarnModel, RelationModel;

NS_ASSUME_NONNULL_BEGIN

typedef void(^httpNoParamsBlock)(void);

@interface HttpUserManager : HttpBaseManager


/**
 发送验证码

 @param phoneString 验证码手机号
 @param success 成功的回调
 @param failure 失败的回调
 */
+ (void)sendVerifyCodeWithMobile:(NSString *)phoneString
					 withSuccuss:(FLSuccess)success
						 failure:(FLFailure)failure;


/**
 登录接口

 @param phoneString phoneString
 @param code 验证码
 @param success 成功的回调
 @param failure 失败的回调
 */
+ (void)loginWithPhoneNumber:(NSString *)phoneString
			   andVerifyCode:(NSString *)code
				  inviteCode:(NSString *)inviteNumber
				 withSuccuss:(void(^)(NSString *token))success
					 failure:(FLFailure)failure;



/**
 得到用户信息

 @param success 成功的回调
 @param failure 失败的回调
 */
+ (void)getUserInfsuccess:(void(^)(FMDBUser *user))success
				  failure:(FLFailure)failure;


+ (void)getMemberInfoSucces:(void(^)(MemberModel *member))success
					failure:(FLFailure)failure;

/**
 发送反馈信息

 @param feedBack 反馈的string
 @param success 成功的回调
 @param failure 失败的回调
 */
+ (void)senFeedBackWithContext:(NSString *)feedBack
				   withSuccuss:(FLSuccess)success
					   failure:(FLFailure)failure;


+ (void)getEarnInfo:(void(^)(EarnModel *model))success
			failure:(FLFailure)failure;

+ (void)getFansCountInfo:(void(^)(NSNumber *total, NSString *amount))success failure:(FLFailure)failure;

+ (void)getElationListWihIndex:(NSNumber *)index
						andType:(NSString *)type
				 andSuccessInfo:(void(^)(RelationModel *model))success
						failure:(FLFailure)failure;

+ (void)userUpdateInfo:(NSString *)avatar
		  withNickName:(NSString *)nickString
		   withSuccuss:(FLSuccess)success
			   failure:(FLFailure)failure;

+ (void)upLoadFile:(UIImage *)avatarImage
	    andSuccessInfo:(void(^)(NSString *url))success
		   failure:(FLFailure)failure;

// 提现接口balance/fundout/put

+ (void)fundoutPutnSuccessInfo:(void(^)(NSString *url))success
						failure:(FLFailure)failure;


+ (void)balanceListIndex:(NSNumber *)index success:(void(^)(NSArray *balanceArray))success failure:(FLFailure)failure;

+ (void)brokListIndex:(NSNumber *)index type:(NSString *)type success:(void(^)(NSArray *brokArray))success failure:(FLFailure)failure;

+ (void)balanceGetSuccess:(void(^)(NSString *alipayNO, NSString *realName , NSNumber *amount))success failure:(FLFailure)failure;

+ (void)balanceUpdatePayName:(NSString *)payName
					realName:(NSString *)realName
				 phoneNumber:(NSString *)phoneNumber
					 verCode:(NSString *)code
				 withSuccuss:(FLSuccess)success
					 failure:(FLFailure)failure;


+ (void)balanceamount:(NSNumber *)amount
           PutSuccuss:(FLSuccess)success
              failure:(FLFailure)failure;

+ (void)getInviteStausByPhone:(NSString *)phone
                      success:(void(^)(BOOL inviteCode))success
                      failure:(FLFailure)failure;

// 请求邀请人列表
+ (void)getInviteListWithIndex:(NSNumber *)index success:(void(^)(NSArray *inviteList))success failure:(FLFailure)failure;

@end

NS_ASSUME_NONNULL_END
